#include <Windows.h>
#include <stdio.h>
#include <DXGI.h>
#include <D3Dcommon.h>
#include <D3D11.h>
#include <D3DX10math.h>
#include <D3DX11async.h>
#include <fstream>
#include <iostream>
#include <dinput.h>
#include <mmsystem.h>
#include <dsound.h>
#include <Pdh.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
using namespace std;

#pragma comment(lib, "dxgi.lib")
#pragma comment(lib, "d3d11.lib")
#pragma comment(lib, "d3dx11.lib")
#pragma comment(lib, "d3dx10.lib")
#pragma comment(lib, "dinput8.lib")
#pragma comment(lib, "dxguid.lib")
#pragma comment(lib, "dsound.lib")
#pragma comment(lib, "winmm.lib")
#pragma comment(lib, "pdh.lib")

#define DEBUG_OUTPUT(str) std::cout << str << '\n';

#define WIN32_LEAN_AND_MEAN
#define DIRECTINPUT_VERSION 0x0800